<?php

class Application_Form_VerbaleDiAccertamento extends Zend_Form {

    private $_id_admin = '';

    public function __construct(array $params = array()) {
        $this->_id_admin = $params['id_admin'];
        parent::__construct();
    }

    public function init() {

        require_once APPLICATION_PATH . '/models/Db/Lib_db.php';
        $handle_lib = new Lib_db();
        
        // nome form e metodo
        $this->setName("verbale_di_accertamento");
        $this->setMethod('post');

        /* campi database: 
         * id_azione_eseguita
         * numero_verbale *****
         * data_ora *****
         * motivo *****
         * evidenze *****
         * id_lib_comune *****
         * indirizzo *****
         * id_unita_locale DA FARE
         * id_utente_creazione_record
         * id_utente_modifica_record
         * time_creazione_record
         * time_modifica_record
         * record_attivo
         */

        // numero verbale
        $this->addElement('text', 'numero_verbale', array(
            'required' => false,
            'label' => 'Numero verbale:',
        ));

        // picker ora
        $data = new Zend_Dojo_Form_Element_DateTextBox('data_accertamento');
        $data->setLabel('Data accertamento: *');
        $data->setRequired(true);
        $this->addElement($data);

        // picker data
        $ora = new Zend_Dojo_Form_Element_TimeTextBox('ora_accertamento');
        $ora->setLabel('Ora: *');
        $ora->setRequired(true);
        $this->addElement($ora);

        // id_lib_unità locale       
        
        //l'unità locale dipende dalla persona giuridica id
        //riempio automaticamentoe comune e indirizzo dell'accertamemnto 
        //e i valori sono quelli della tabella unità locale
        $unita_locali = $handle_lib->getLibUnitaLocali();
        $ul = $this->createElement('select', 'id_unita_locale');
        $ul->setLabel('Unita\' locale:');
        foreach ($unita_locali as $unita_locale) {
            $ul->addMultiOptions(array($unita_locale['id_unita_locale'] => $unita_locale['ragione_sociale']
            ));
        }
        $ul->setRequired(false);
        $this->addElement($ul);         
        
        // motivo dell'accertamento
        $this->addElement('textarea', 'motivo', array(
            'filters' => array('StringTrim'),
            'label' => 'Motivo accertamento:',
            'required' => false,
            'attribs' => array(
                'COLS' => '40',
                'ROWS' => '5'
            ),
            'validators' => array(
                array('validator' => 'StringLength', 'options' => array(0, 2000))
            )
        ));

        // evidenze riscontrate nell'accertamento
        $this->addElement('textarea', 'evidenze', array(
            'filters' => array('StringTrim'),
            'label' => 'Evidenze riscontrate:',
            'required' => false,
            'attribs' => array(
                'COLS' => '40',
                'ROWS' => '5'
            ),
            'validators' => array(
                array('validator' => 'StringLength', 'options' => array(0, 1000))
            )
        ));


        //id_lib_comune_nascita 
        $com = $this->createElement('text','id_comune_accertamento'); 
        $com ->setLabel('Comune: *');
        $com->setRequired(true);    
        $com->autocomplete = 'off';
        $this->addElement($com);
        
        $com->setDecorators(array(
            'ViewHelper',
            'Description',
            'Errors',
            array('HtmlTag', array('tag' => 'dd')),
            array('Label', array('tag' => 'dt')),
            array('Description', array('escape'=>false,'tag'=>'span'))
        ));   
        $com->setDescription((html_entity_decode('<div class="result" id="results-accertamento"></div>')));
        
        //id del comune selezionato dall'utente
        $id_comune1 = $this->createElement('hidden', 'id_lib_comune_accertamento');
        $id_comune1->removeDecorator('label');
        $id_comune1->setRequired(false);
        $this->addElement($id_comune1);        
        
        //indirizzo 
        $this->addElement('text', 'indirizzo', array(
            'required' => true,
            'label' => 'Indirizzo: *',
        ));        
        
              
        //id dell'utente che ha creato e modificato questa anagrafe
        $this->addElement('hidden', 'id_admin');
        
        //id_processo_sanzionatorio
        $this->addElement('hidden', 'id_processo');        
        
        //id_azione
        $this->addElement('hidden', 'id_azione');  
        
        
        // pulsante invia
        $this->addElement('submit', 'submit', array(
            'ignore' => true,
            'label' => 'Salva',
        ));
    }

}

